Our present invention relates to a technique for the creation of 3-D facial models, which can be used for instance for the implementation of so-called avatars (anthropomorphological models) to be used in virtual environments, video-communication applications, video games, V productions, and creation of advanced man-machine interfaces.
There are already some known technical solutions for the creation of a 3D model starting from the photograph of a person""s face.
On this subject matter, reference can be made for instance to the product Character Creator of company Darwin 3D (see Internet site http://www.darwin3d.com) as well as to the product Avatar Maker of company Sven Technologies (see Internet site http://www.sven-tec.com). The product xe2x80x9cCharacter Creatorxe2x80x9d is based on the choice of a basic model resembling the photographed person. The face of the photograph is framed by an ellipse and the program uses what lies within the ellipse as a texture of the model. In the product xe2x80x9cAvatar Makerxe2x80x9d a dozen of points are marked on the face, and a basic model is then chosen and to which the photograph texture is associated.
The main drawback of such known embodiments is that the structure of the generated model does not allow a subsequent animation. This is due to the fact that the model (usually generated as a xe2x80x9cwire framexe2x80x9d model, i.e. starting from a mesh structure, as well also be seen in the sequel), cannot exactly fit the profile in the mouth region, thus preventing reproduction of lip movements. This also applies to other significant parts of the face, such as eyes and nose.
The object of the invention is to provide a method which allows the creation of facial models that can appear realistic both in static conditions and in animation conditions, in particular for instance as far as the opening and closing of eyelids and the possibility of simulating eye rotation are concerned.
According to the invention, this object is attained through a method of creating 3D facial models (M) starting from face images (I), which comprises the operations of:
providing at least one face image;
providing a 3-D model having a vertex structure and comprising a number of surfaces chosen within the group formed by: a face surface, right eye and left eye surfaces, upper teeth and lower teeth surfaces;
choosing respective sets of homologous points among the vertexes of the structure of the model and on the at least one face image, and modifying the structure of the model so as to make the respective sets of homologous points coincide.
According to the invention the eye surfaces and teeth surfaces (DS, DI) are chosen in such a way as not to interfere with the face surface. The vertices of the structure of the model of the respective set can be chosen in compliance with the MPEG-4 standard.
The modification of the structure of the model can include at least one of the operations chosen within the group formed by:
making the width of the projection of the model coincide with the width of the face image,
vertically registering the projection of the model with the face image, and performing a global, nonlinear transformation of the model in the vertical direction in order to make the position of at least one characteristic feature of the model coincide with an homologous characteristic feature of such face image. The global transform can be performed through a second order function, preferably a parabolic function.
The modification of the structure of the model can include at least one of the following operations:
adaptation of the eyelid projection and of the eye contours in the model to the homologous regions in the face images through at least one operation chosen out of a translation and an affine transform,
adaptation, in the vertical direction, of the nose through at least one operation chosen out of a scaling and a deformation through an affine transform,
modification of the mouth through at least one affine transform,
translation and scaling of the region between the nose base and the upper end of the mouth, and
adaptation of the region between the lower end of the mouth and the chin tip by means of translation and scaling.
The method can include as the final operation of the modification of the model applying the eye surfaces and/or teeth surfaces close to the face surface.
The modification of the structure of the model can be carried out in the form of a geometric operation performed by positioning the face image and the model in opposite and mirroring positions with respect to the origin of a three-dimensional Cartesian system.
The method can additionally comprise the operation of applying a respective texture to the modified model. The method can comprise operations of computing at least one of the parameters chosen within the group including:
distance xcex1 between the origin and a center point of the model, and
distance xcex between the origin and the plane of the image and of applying the texture to the modified model through a process of texture binding performed on the basis of at least one of the distance parameters.
Finally the method can comprise providing a plurality of the face images corresponding to different points of sight of the face,
creating the texture to be applied to the model by generating, for each of the face images, a respective texture information in the form of right triangles of constant size,
coupling two by two triangles relating to the texture information derived from a plurality of images so as to obtain, as a result of the coupling, respective rectangles, and
applying the texture to the modified model in the form of a matrix of the rectangles.
Substantially the method according to the invention is based on the adaptation of a basic model of a facexe2x80x94typically a human facexe2x80x94having the physiognomy characteristics of the photographed person. The basic model (or templatexe2x80x9d) is represented by a structure, preferably of the type called xe2x80x9cwire framexe2x80x9d, formed by a plurality of surfaces chosen out of a set of five surfaces, namely:
face,
right eye and left eye, and
upper teeth and lower teeth.
The eye surfaces are separated from those of the face so as to allow, among other things, creation of opening and closing movements of eyelids, and a slight translation simulating the actual eye rotation. Similarly, it is possible to perform the animation of the model, as far as the speech is concerned, through the animation of the surfaces representing the upper and lower teeth.